為什麼學 C 語言對逆向工程很重要?在逆向工程(Reverse Engineering)中,常見的流程是:
大量的系統程式、驅動程式、嵌入式韌體、甚至惡意程式(Malware)都是用 C 語言 或類似的語言(如 C++)撰寫的。
因此:
舉例:
int add(int a, int b) {
return a + b;
}
反組譯後(x86 組合語言可能):
add:
mov eax, edi
add eax, esi
ret
若我們學過 C 語言,就能快速看出這段組合碼是在進行 將兩個參數相加並回傳